home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Software 2000
/
Software 2000 Volume 1 (Disc 1 of 2).iso
/
utilities
/
u497.dms
/
u497.adf
/
sprite-driver.s
< prev
next >
Wrap
Text File
|
1988-04-14
|
11KB
|
571 lines
; *************
; ** sprite0 **
; *************
sn_sinus:
clr.l d0
clr.l d1
move.b sn_data+1024,d0
move.b sn_data+1056,d1
add.b d1,sn_data+1024
lea.l sn_data,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1060
beq sn_00
lsr.w #1,d0
sn_00 move.w d0,sn_data+1064
move.b sn_data+1032,d0
move.b sn_data+1057,d1
add.b d1,sn_data+1032
lea.l sn_data,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1061
beq sn_01
lsr.w #1,d0
sn_01 add.w d0,sn_data+1064
lsr.w #1,sn_data+1064
clr.l d0
move.b sn_data+1068,d0
add.w d0,sn_data+1064
move.b sn_data+1065,sn_data+1070
and.b #$f8,sn_data+1073
btst #8,sn_data+1064
beq sn_02
or.b #4,sn_data+1073
sn_02 add.w #$20,sn_data+1064
move.b sn_data+1065,sn_data+1072
btst #8,sn_data+1064
beq sn_03
or.b #2,sn_data+1073
sn_03 move.b sn_data+1040,d0
move.b sn_data+1058,d1
add.b d1,sn_data+1040
lea.l sn_data+512,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1062
beq sn_04
lsr.w #1,d0
sn_04 move.w d0,sn_data+1066
clr.l d0
clr.l d1
move.b sn_data+1048,d0
move.b sn_data+1059,d1
add.b d1,sn_data+1048
lea.l sn_data+512,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1063
beq sn_05
lsr.w #1,d0
sn_05 add.w d0,sn_data+1066
lsr.w #1,sn_data+1066
lsr.w #1,sn_data+1066
bcc sn_06
or.b #1,sn_data+1073
sn_06 clr.l d0
move.b sn_data+1069,d0
add.w d0,sn_data+1066
move.b sn_data+1067,sn_data+1071
; *************
; ** sprite1 **
; *************
clr.l d0
clr.l d1
move.b sn_data+1025,d0
move.b sn_data+1056,d1
add.b d1,sn_data+1025
lea.l sn_data,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1060
beq sn_10
lsr.w #1,d0
sn_10 move.w d0,sn_data+1064
move.b sn_data+1033,d0
move.b sn_data+1057,d1
add.b d1,sn_data+1033
lea.l sn_data,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1061
beq sn_11
lsr.w #1,d0
sn_11 add.w d0,sn_data+1064
lsr.w #1,sn_data+1064
clr.l d0
move.b sn_data+1068,d0
add.w d0,sn_data+1064
move.b sn_data+1065,sn_data+1074
and.b #$f8,sn_data+1077
btst #8,sn_data+1064
beq sn_12
or.b #4,sn_data+1077
sn_12 add.w #$20,sn_data+1064
move.b sn_data+1065,sn_data+1076
btst #8,sn_data+1064
beq sn_13
or.b #2,sn_data+1077
sn_13 move.b sn_data+1041,d0
move.b sn_data+1058,d1
add.b d1,sn_data+1041
lea.l sn_data+512,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1062
beq sn_14
lsr.w #1,d0
sn_14 move.w d0,sn_data+1066
clr.l d0
clr.l d1
move.b sn_data+1049,d0
move.b sn_data+1059,d1
add.b d1,sn_data+1049
lea.l sn_data+512,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1063
beq sn_15
lsr.w #1,d0
sn_15 add.w d0,sn_data+1066
lsr.w #1,sn_data+1066
lsr.w #1,sn_data+1066
bcc sn_16
or.b #1,sn_data+1077
sn_16 clr.l d0
move.b sn_data+1069,d0
add.w d0,sn_data+1066
move.b sn_data+1067,sn_data+1075
; *************
; ** sprite2 **
; *************
clr.l d0
clr.l d1
move.b sn_data+1026,d0
move.b sn_data+1056,d1
add.b d1,sn_data+1026
lea.l sn_data,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1060
beq sn_20
lsr.w #1,d0
sn_20 move.w d0,sn_data+1064
move.b sn_data+1034,d0
move.b sn_data+1057,d1
add.b d1,sn_data+1034
lea.l sn_data,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1061
beq sn_21
lsr.w #1,d0
sn_21 add.w d0,sn_data+1064
lsr.w #1,sn_data+1064
clr.l d0
move.b sn_data+1068,d0
add.w d0,sn_data+1064
move.b sn_data+1065,sn_data+1078
and.b #$f8,sn_data+1081
btst #8,sn_data+1064
beq sn_22
or.b #4,sn_data+1081
sn_22 add.w #$20,sn_data+1064
move.b sn_data+1065,sn_data+1080
btst #8,sn_data+1064
beq sn_23
or.b #2,sn_data+1081
sn_23 move.b sn_data+1042,d0
move.b sn_data+1058,d1
add.b d1,sn_data+1042
lea.l sn_data+512,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1062
beq sn_24
lsr.w #1,d0
sn_24 move.w d0,sn_data+1066
clr.l d0
clr.l d1
move.b sn_data+1050,d0
move.b sn_data+1059,d1
add.b d1,sn_data+1050
lea.l sn_data+512,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1063
beq sn_25
lsr.w #1,d0
sn_25 add.w d0,sn_data+1066
lsr.w #1,sn_data+1066
lsr.w #1,sn_data+1066
bcc sn_26
or.b #1,sn_data+1081
sn_26 clr.l d0
move.b sn_data+1069,d0
add.w d0,sn_data+1066
move.b sn_data+1067,sn_data+1079
; *************
; ** sprite3 **
; *************
clr.l d0
clr.l d1
move.b sn_data+1027,d0
move.b sn_data+1056,d1
add.b d1,sn_data+1027
lea.l sn_data,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1060
beq sn_30
lsr.w #1,d0
sn_30 move.w d0,sn_data+1064
move.b sn_data+1035,d0
move.b sn_data+1057,d1
add.b d1,sn_data+1035
lea.l sn_data,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1061
beq sn_31
lsr.w #1,d0
sn_31 add.w d0,sn_data+1064
lsr.w #1,sn_data+1064
clr.l d0
move.b sn_data+1068,d0
add.w d0,sn_data+1064
move.b sn_data+1065,sn_data+1082
and.b #$f8,sn_data+1085
btst #8,sn_data+1064
beq sn_32
or.b #4,sn_data+1085
sn_32 add.w #$20,sn_data+1064
move.b sn_data+1065,sn_data+1084
btst #8,sn_data+1064
beq sn_33
or.b #2,sn_data+1085
sn_33 move.b sn_data+1043,d0
move.b sn_data+1058,d1
add.b d1,sn_data+1043
lea.l sn_data+512,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1062
beq sn_34
lsr.w #1,d0
sn_34 move.w d0,sn_data+1066
clr.l d0
clr.l d1
move.b sn_data+1051,d0
move.b sn_data+1059,d1
add.b d1,sn_data+1051
lea.l sn_data+512,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1063
beq sn_35
lsr.w #1,d0
sn_35 add.w d0,sn_data+1066
lsr.w #1,sn_data+1066
lsr.w #1,sn_data+1066
bcc sn_36
or.b #1,sn_data+1085
sn_36 clr.l d0
move.b sn_data+1069,d0
add.w d0,sn_data+1066
move.b sn_data+1067,sn_data+1083
; *************
; ** sprite4 **
; *************
clr.l d0
clr.l d1
move.b sn_data+1028,d0
move.b sn_data+1056,d1
add.b d1,sn_data+1028
lea.l sn_data,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1060
beq sn_40
lsr.w #1,d0
sn_40 move.w d0,sn_data+1064
move.b sn_data+1036,d0
move.b sn_data+1057,d1
add.b d1,sn_data+1036
lea.l sn_data,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1061
beq sn_41
lsr.w #1,d0
sn_41 add.w d0,sn_data+1064
lsr.w #1,sn_data+1064
clr.l d0
move.b sn_data+1068,d0
add.w d0,sn_data+1064
move.b sn_data+1065,sn_data+1086
and.b #$f8,sn_data+1089
btst #8,sn_data+1064
beq sn_42
or.b #4,sn_data+1089
sn_42 add.w #$20,sn_data+1064
move.b sn_data+1065,sn_data+1088
btst #8,sn_data+1064
beq sn_43
or.b #2,sn_data+1089
sn_43 move.b sn_data+1044,d0
move.b sn_data+1058,d1
add.b d1,sn_data+1044
lea.l sn_data+512,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1062
beq sn_44
lsr.w #1,d0
sn_44 move.w d0,sn_data+1066
clr.l d0
clr.l d1
move.b sn_data+1052,d0
move.b sn_data+1059,d1
add.b d1,sn_data+1052
lea.l sn_data+512,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1063
beq sn_45
lsr.w #1,d0
sn_45 add.w d0,sn_data+1066
lsr.w #1,sn_data+1066
lsr.w #1,sn_data+1066
bcc sn_46
or.b #1,sn_data+1089
sn_46 clr.l d0
move.b sn_data+1069,d0
add.w d0,sn_data+1066
move.b sn_data+1067,sn_data+1087
; *************
; ** sprite5 **
; *************
clr.l d0
clr.l d1
move.b sn_data+1029,d0
move.b sn_data+1056,d1
add.b d1,sn_data+1029
lea.l sn_data,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1060
beq sn_50
lsr.w #1,d0
sn_50 move.w d0,sn_data+1064
move.b sn_data+1037,d0
move.b sn_data+1057,d1
add.b d1,sn_data+1037
lea.l sn_data,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1061
beq sn_51
lsr.w #1,d0
sn_51 add.w d0,sn_data+1064
lsr.w #1,sn_data+1064
clr.l d0
move.b sn_data+1068,d0
add.w d0,sn_data+1064
move.b sn_data+1065,sn_data+1090
and.b #$f8,sn_data+1093
btst #8,sn_data+1064
beq sn_52
or.b #4,sn_data+1093
sn_52 add.w #$20,sn_data+1064
move.b sn_data+1065,sn_data+1092
btst #8,sn_data+1064
beq sn_53
or.b #2,sn_data+1093
sn_53 move.b sn_data+1045,d0
move.b sn_data+1058,d1
add.b d1,sn_data+1045
lea.l sn_data+512,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1062
beq sn_54
lsr.w #1,d0
sn_54 move.w d0,sn_data+1066
clr.l d0
clr.l d1
move.b sn_data+1053,d0
move.b sn_data+1059,d1
add.b d1,sn_data+1053
lea.l sn_data+512,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1063
beq sn_55
lsr.w #1,d0
sn_55 add.w d0,sn_data+1066
lsr.w #1,sn_data+1066
lsr.w #1,sn_data+1066
bcc sn_56
or.b #1,sn_data+1093
sn_56 clr.l d0
move.b sn_data+1069,d0
add.w d0,sn_data+1066
move.b sn_data+1067,sn_data+1091
; *************
; ** sprite6 **
; *************
clr.l d0
clr.l d1
move.b sn_data+1030,d0
move.b sn_data+1056,d1
add.b d1,sn_data+1030
lea.l sn_data,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1060
beq sn_60
lsr.w #1,d0
sn_60 move.w d0,sn_data+1064
move.b sn_data+1038,d0
move.b sn_data+1057,d1
add.b d1,sn_data+1038
lea.l sn_data,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1061
beq sn_61
lsr.w #1,d0
sn_61 add.w d0,sn_data+1064
lsr.w #1,sn_data+1064
clr.l d0
move.b sn_data+1068,d0
add.w d0,sn_data+1064
move.b sn_data+1065,sn_data+1094
and.b #$f8,sn_data+1097
btst #8,sn_data+1064
beq sn_62
or.b #4,sn_data+1097
sn_62 add.w #$20,sn_data+1064
move.b sn_data+1065,sn_data+1096
btst #8,sn_data+1064
beq sn_63
or.b #2,sn_data+1097
sn_63 move.b sn_data+1046,d0
move.b sn_data+1058,d1
add.b d1,sn_data+1046
lea.l sn_data+512,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1062
beq sn_64
lsr.w #1,d0
sn_64 move.w d0,sn_data+1066
clr.l d0
clr.l d1
move.b sn_data+1054,d0
move.b sn_data+1059,d1
add.b d1,sn_data+1054
lea.l sn_data+512,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1063
beq sn_65
lsr.w #1,d0
sn_65 add.w d0,sn_data+1066
lsr.w #1,sn_data+1066
lsr.w #1,sn_data+1066
bcc sn_66
or.b #1,sn_data+1097
sn_66 clr.l d0
move.b sn_data+1069,d0
add.w d0,sn_data+1066
move.b sn_data+1067,sn_data+1095
; *************
; ** sprite7 **
; *************
clr.l d0
clr.l d1
move.b sn_data+1031,d0
move.b sn_data+1056,d1
add.b d1,sn_data+1031
lea.l sn_data,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1060
beq sn_70
lsr.w #1,d0
sn_70 move.w d0,sn_data+1064
move.b sn_data+1039,d0
move.b sn_data+1057,d1
add.b d1,sn_data+1039
lea.l sn_data,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1061
beq sn_71
lsr.w #1,d0
sn_71 add.w d0,sn_data+1064
lsr.w #1,sn_data+1064
clr.l d0
move.b sn_data+1068,d0
add.w d0,sn_data+1064
move.b sn_data+1065,sn_data+1098
and.b #$f8,sn_data+1101
btst #8,sn_data+1064
beq sn_72
or.b #4,sn_data+1101
sn_72 add.w #$20,sn_data+1064
move.b sn_data+1065,sn_data+1100
btst #8,sn_data+1064
beq sn_73
or.b #2,sn_data+1101
sn_73 move.b sn_data+1047,d0
move.b sn_data+1058,d1
add.b d1,sn_data+1047
lea.l sn_data+512,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1062
beq sn_74
lsr.w #1,d0
sn_74 move.w d0,sn_data+1066
clr.l d0
clr.l d1
move.b sn_data+1055,d0
move.b sn_data+1059,d1
add.b d1,sn_data+1055
lea.l sn_data+512,a0
asl #1,d0
move.w (a0,d0),d0
cmp.b #0,sn_data+1063
beq sn_75
lsr.w #1,d0
sn_75 add.w d0,sn_data+1066
lsr.w #1,sn_data+1066
lsr.w #1,sn_data+1066
bcc sn_76
or.b #1,sn_data+1101
sn_76 clr.l d0
move.b sn_data+1069,d0
add.w d0,sn_data+1066
move.b sn_data+1067,sn_data+1099
rts